Method and system for use of a trusted server to facilitate location determination

ABSTRACT

Disclosed is a method and system for use of a trusted server such as an over-the-air provisioning server to facilitate mobile location determination. If a mobile location server (MLS) sends a location-determination message to a mobile station and does not receive a response back from the mobile station, there is a chance that the mobile station is not provisioned with a correct address of the MLS and that the mobile station therefore did not respond. To help jump start the location-determination process, the MLS may respond to that situation by instead causing a trusted server such as an over-the-air-service-provisioning (OTASP) server to send a location-determination message to the mobile station, triggering a response from the mobile station.

REFERENCE TO RELATED APPLICATION

This is a continuation of U.S. patent application Ser. No. 12/623,847,filed Nov. 23, 2009, the entirety of which is hereby incorporated byreference.

BACKGROUND

Cellular wireless is an increasingly popular means of personalcommunication in the modern world. To provide cellular wirelesscommunication services, a wireless carrier typically operates a radioaccess network (RAN), which may include numerous base transceiverstations (BTSs or “base stations”) and associated networkinfrastructure. Each BTS radiates to define one or more wirelesscoverage areas such as a cell and cell sectors in which mobile stationscan communicate with the BTS over an air interface. The BTS may then becoupled with other network elements (such a radio network controller andswitching center), which may control aspects of the air interface (suchas channel assignment and handoff between coverage areas) and otheraspects of RAN operation. Further, the network infrastructure mayprovide connectivity with the public switched telephone network (PSTN)and may further provide connectivity with a packet-switched network suchas the Internet or a private packet network. With this arrangement, amobile station operating within coverage of a BTS may communicatethrough the RAN with entities on the PSTN and/or the packet-switchednetwork, as well as with other mobile stations served by the RAN.

In practice, for instance, to place a call over the PSTN, a mobilestation equipped to do so may transmit a call origination message overan air interface access channel to RAN, providing dialed digits. Uponreceipt of the call origination message, the RAN may then assign an airinterface traffic channel for use by mobile station to engage in thecall, and RAN may set up the call over the PSTN to the called number.Similarly, when the RAN receives a request to connect a call to themobile station, the RAN may page the mobile station over an airinterface paging channel and may assign an air interface traffic channelfor the call.

To engage in packet-data communication on the packet-switched network,on the other hand, the mobile station may need to acquire a radio link,a data link, and an network address (e.g., Internet Protocol (IP)address). To do so, for instance, the mobile station may transmit apacket-data origination request message over an air interface accesschannel to the RAN. Upon receipt of that message, the RAN may thenassign an air interface traffic channel for use by the mobile station asa radio link. Further, the RAN or an associated entity may negotiatewith the mobile station to establish a data link and to assign orarrange for assignment of an IP address for use by mobile station tocommunicate as a node on the packet-switched network.

An important feature of contemporary cellular wireless networks is anability to locate the geographical position of a mobile station. Such afeature was initially developed to assist emergency services in locatinga mobile station. However, the availability of location information tosupport E911 services has given rise to the development of many otherlocation-based services as well.

For instance, given the location of a mobile station, a location-basedservice provider/application (e.g., a cellular wireless carrier or thirdparty) that is in PSTN or packet-switched communication with the mobilestation can provide the mobile station user with a weather or trafficreport relevant to the user's location. As another example, alocation-based service provider can report a list of services orestablishments (e.g., restaurants, parks, theatres, etc.) in the mobilestation user's vicinity. As still another example, a location-basedservice provider can provide a mobile station user with a map of theuser's location or with directions for travel between the user'slocation and another location. And as yet another example, knowing thata mobile station is operating in a particular location, a location-basedservice provider can send the mobile station a location-based message,such as an advertisement or coupon for a nearby establishment. Otherlocation-based services exist currently or will be developed in thefuture as well.

In practice, when a location-based service (LBS) application wants todetermine the location of a mobile station, the application may send alocation request message to the wireless carrier that serves the mobilestation (or, if the LBS application is hosted by the carrier itself,then the application may send the request within the carrier's networkto a designated entity or logic for handling). In response, the carriermay then engage in a process to determine where the mobile station iscurrently located, and the carrier may then generate a response to thelocation request and send the response to the LBS application.

Typically, a wireless carrier will operate a mobile location server(MLS) that is arranged to determine and report mobile station locationsto requesting entities. The MLS may include a “mobile positioningcenter” (MPC) and a position determining entity (PDE), which may beintegrated together. The MLS may function to determine the location of agiven mobile station based on various factors such as (i) the identityand location of the cell/sector in which the mobile station is currentlyoperating, (ii) satellite-based positioning information provided by themobile station, (iii) round trip signal delay measurements, and/or (iv)signal strength measurements. Further, the carrier may operate a frontend server for receiving location requests from LBS applications andforwarding those requests to the MLS.

When the MLS receives a request for the location of a particular mobilestation, the MLS (e.g., MPC/PDE) may thus determine the location of themobile station. The MLS may then return the determined location of themobile station to the requesting entity, and the requesting entity maythen report or make use of the determined location, such as to provide alocation-based service.

Oftentimes to determine the location of a mobile station, a carrier'sMLS will need to obtain information from the mobile station itself. Thisinformation may comprise satellite positioning data, such as GPSreadings or other data, information regarding the cell/sector in whichthe mobile station is currently operating, and information about signalsthat the mobile station is receiving from various base stations, forinstance. To obtain this data from the mobile station, the MLS may thusneed to communicate with the mobile station.

Overview

When an MLS faces a need to determine the location of a mobile station,the MLS may transmit to the mobile station a message related to thelocation determination process, such as a message seeking initiation ofa location-determination communication session between the MLS and themobile station. This message will originate from the MLS and will thusbear as a source address a network address (e.g., IP address) of theMLS.

Upon receipt of the message from the MLS, the mobile station may thenrespond to the MLS, thereby indicating to the MLS that the mobilestation is available and willing to participate in thelocation-determination process. Either that response from the mobilestation or a subsequent message from the mobile station to the MLS mayalso carry data usable by the MLS to facilitate the locationdetermination process. For instance, the message from the mobile stationmay carry data identifying base stations nearby the mobile station andspecifying distances of those base stations from the mobile station (asindicated by round trip signal delay measurements for instance). The MLSmay use such base station distance measurements to approximate thelocation of the mobile station (by triangulation, given knowledge of thebase station locations), so that the MLS can then send to the mobilestation a set of ephemeris (satellite assistance) data that will enablethe mobile station to tune to GPS satellites in the sky over the mobilestation, and thereby to facilitate more granular location determination.

A mobile station may be provisioned (e.g., programmed) with dataspecifying the network addresses of various trusted servers with whichthe mobile station can communicate. For example, the mobile station maystore the IP address of a conference server (e.g., push-to-talk (PTT)server) so that the mobile station can communicate with the conferenceserver and thereby engage in conference calls (e.g., PTT sessions). Asanother example, the mobile station may store the IP address of anover-the-air service provisioning (OTASP) server from which the mobilestation may receive service logic updates or the like, so that thewireless carrier can provision the mobile station with service logic anddata updates when necessary. And as yet another example, the mobilestation may store the IP address or other network address of the MLS, sothat the mobile station can engage in location-determination messagingwith the MLS.

The network address specified for a trusted server may be an IP address,to facilitate packet-data communication between an IP address of themobile station and an IP address of the trusted server. Thus inpractice, a the trusted server may send to the IP address of the mobilestation a communication specifying as source address the IP address ofthe trusted server, and the mobile station may likewise send acommunication from the IP address of the mobile station to the IPaddress of the trusted server.

Alternatively or additionally, the network address specified for atrusted server may be an address that would allow the mobile station toengage in WAP push type messaging with the trusted server for instance.With “WAP push” messaging, the trusted server may send a WAP pushmessage to the mobile station, which the mobile station's serving RANmay deliver to the mobile station via a control channel (e.g., pagingchannel) or other channel, as a short messaging service (SMS) messageaccording to industry standard IS-836 for instance. The WAP push messagemay itself specify a respond-to address in the form of an IP address, auniversal resource locator, or another network address to which themobile station should responsively communicate, and the mobile stationmay then respond by communicating to that specified address. A WAP pushtype message from a trusted server will typically specify a networkaddress of the trusted server as a source address of the message. Inturn, the mobile station's communication to the respond-to address maycome from the IP address or other address of the mobile station.

In practice, the mobile station may be programmed to respond to acommunication from a given server only if the communication originatesfrom the network address that the mobile station has stored for thatserver, or more generally only if the source address of thecommunications is a legitimate one according to the mobile station'sprovisioning, and to disregard such communications if not from suchexpected addresses. This is a safeguard to help prevent the mobilestation from responding to bogus messages from servers or other entitiesand thus to protect the mobile station from malicious network attacks.Further, the mobile station may be programmed with the legitimateaddress of each trusted server so that the mobile station itself caninitiate communications to those servers when necessary.

For one reason or another, however, a trusted server address that isstored in the mobile station may be incorrect. This can occur, forinstance, if a user of the mobile station adjusts programming of themobile station to change a server address or if an application on themobile station changes a server address, or in various other situations.

In terms of location determination, if the mobile station is programmedwith an MLS address that is not the actual/correct address of the MLS,the mobile station may unfortunately not respond to legitimatecommunications from the MLS because those communications would specify asource address that does not match the MLS address stored in the mobilestation. As a result, when the MLS sends to the mobile station alocation-determination communication as mentioned above, the mobilestation may erroneously determine that the communication is not from alegitimate address and the mobile station may therefore disregard thecommunication. Consequently, the MLS would not receive a response fromthe mobile station, and the location determination process would fail(or the MLS would need to resort to less desirablelocation-determination techniques, such as generally estimating themobile station's location based on the location of a serving basestation or other RAN infrastructure).

Disclosed herein is a method and associated system to help detect anddeal with this problem in practice.

The method stems from the understanding that, if an MLS sends a messagefrom the source address of the MLS to a destination address of themobile station and the MLS does not receive a response back from themobile station, an issue is whether the mobile station is provisionedwith the wrong address of the MLS. To help resolve that issue and tojump-start the location determination process, the MLS will detect thelack of response from the mobile station and will responsively cause adifferent trusted server to send a communication to the destinationaddress of the mobile station in an effort to trigger mobile stationresponse communication from the mobile station to the MLS or to thetrusted server.

Upon transmission of the communication from the trusted server to thedestination address of the mobile station, if a response communicationis then received from the mobile station, then a fair assumption is thatthe reason the mobile station did not respond to the initial MLScommunication is that the mobile station was not properly provisionedwith the correct address of the MLS. In that case, further locationdetermination signaling can be conducted via the trusted server to helpensure that the mobile station processes and responds to thecommunications, or such a communication may re-provision the mobilestation with a proper address of the MLS to allow the MLS itself tothereafter communicate to the mobile station.

On the other hand, if a response communication is not received from themobile station, then a fair assumption is that some other problem existsin communicating with the mobile station. For instance, the mobilestation may be out of coverage, or some other defect may exist in thecommunication path to the mobile station. In that case, the attemptedlocation determination process can be aborted or the MLS can simplyresort to determining location in a less accurate manner withoutinteracting with the mobile station itself.

These as well as other aspects, advantages, and alternatives will becomemore apparent to those of ordinary skill in the art by reading thefollowing detailed description, with reference where appropriate to theaccompanying drawings. Further, it should be understood that thisoverview and the other description provided throughout this document isintended to describe the invention merely by way of example and thatnumerous other examples and variations may be possible withoutlimitation to the specific details described.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a simplified block diagram of a network in which the presentmethod can be implemented.

FIG. 2 is a simplified block diagram depicting components of an examplemobile station operable in the network of FIG. 1.

FIG. 3 is a simplified block diagram depicting components of an exampleMLS operable in the network of FIG. 1.

FIG. 4 is a simplified block diagram depicting components of an exampleOTASP server operable in the network of FIG. 1.

FIG. 5 is a flow chart depicting functions that can be carried out inaccordance with the exemplary method.

DETAILED DESCRIPTION

As noted above, FIG. 1 is a simplified block diagram of a network inwhich the method can be implemented. It should be understood, however,that this and other block diagrams and flow charts are meant merely asexamples and are not intended to be limiting, particularly since variousprotocols may call for use of different arrangements. As examplevariations from the arrangement shown, for instance, various elementsand functions can be integrated together, split and distributed,replicated, repositioned, eliminated, re-ordered, renamed, or otherwisemodified. Further, it should be understood that functions described asbeing carried out by a given network element can be carried out by aprocessor executing program instructions and/or by any combination ofhardware, firmware, and/or software.

As shown in FIG. 1, the network includes at its core an example RAN 12with representative components including a BTS 14, a base stationcontroller (BSC) 16, and a mobile switching center (MSC) 18. In thisarrangement, BTS 14 radiates to define a radio frequency (RF) airinterface 20 through which the BTS 14 may communicate with served mobilestations, such as a representative mobile station 22. Thiscommunication, and thus mobile station 22 and RAN 12, may operate inaccordance with any agreed air interface protocol, examples of whichinclude CDMA (e.g., IS-95, IS-2000, 1xRTT, 1xEV-DO, etc.), iDEN, WiMAX,TDMA, AMPS, GSM, GPRS, UMTS, EDGE, LTE, WI-FI (e.g., 802.11), BLUETOOTH,and others now known or later developed.

In example operation, BSC 16 controls BTS 14 and is coupled with MSC 18,which provides connectivity with the PSTN (not shown) so that servedmobile stations can communicate with remote entities on the PSTN.Further, BSC 16 is coupled with a packet data serving node (PDSN) orother gateway 24, which provides connectivity with a packet-switchednetwork 26, so that served mobile stations can engage in “user plane”communication with remote entities on the packet-switched network. AndMSC 18 is coupled with a signaling network (e.g., Signaling System #7(SS7) network) through which served mobile stations can engage in“control plane” communication with remote entities on the signalingnetwork.

Shown sitting as nodes on both the packet-switched network 26 andsignaling network 38 are an MLS 28 (including by way of example an MPC30 and PDE 32), an OTASP server 34, and a short messaging service center(SMSC) 36. In line with the discussion above, MLS 28 preferablyfunctions to determine and report mobile station location so as tofacilitate location-based services, and OTASP server 34 preferablyfunctions to provision mobile stations over the air with service logic(e.g. program logic) and service parameters. SMSC 36 in turn functionsto store and forward SMS messages such as WAP Push messages to mobilestations.

In practice, a trusted server such as MLS 28 or OTASP server 34 may bearranged to engage in user plane communication with mobile station 22.To facilitate such communication, the trusted server may have anassigned IP address for communicating on the packet-switched network 26,and mobile station 22 may likewise have an assigned IP address forcommunicating on the packet-switched network 26. (These IP addresses maybe globally assigned or may be local addresses subject to networkaddress translation with port association.) Thus, a trusted server maysend to the mobile station a communication specifying the trustedserver's IP address as source address and specifying the mobilestation's IP address as destination address, and the node may receivefrom the mobile station a communication specifying the mobile station'sIP address as source address and specifying the trusted server's IPaddress as destination address.

Further, a trusted server such as MLS 28 or OTASP server 34 may bearranged to engage in control plane communication with mobile station22. For instance, the trusted server may send a communication viapacket-switched network 26 or signaling network 38 to SMSC 36,specifying as source address an address of the trusted server andspecifying as destination address an address of the mobile station. SMSC36 may then deliver the message to RAN 12 and RAN 12 may then transmitthe message as a control channel message (e.g., a paging channel messageor the like) over the air to mobile station 22. Likewise, mobile station22 may send a control plane communication from a source address of themobile station to a destination address of the trusted server.

Whether through user-plane or control-plane communication, a messagefrom a trusted server to the mobile station may carry data and/orinstructions for the mobile station. For example, a message from MLS 28may provide the mobile station with ephemeris data usable by the mobilestation to tune to particular GPS satellites 40 so as to facilitatelocation determination. As another example, a message from OTASP server34 may carry a directive for mobile station 22 to carry out particularfunctions and may carry provisioning data for storage and use by themobile station. Further, a message from a trusted server may cause themobile station to engage in additional communication. For instance, amessage from a trusted server may specify a respond-to address (e.g., IPaddress or URL), to which the mobile station should send a responsecommunication, and the mobile station may react accordingly.

In practice, mobile station 22 may be any type of wireless communicationdevice, whether actually mobile (movable) or stationary. For instance,mobile station 22 may be a handheld cellular telephone or personaldigital assistant, a wireless data card or other wireless communicationmodule adapted for connection with one or more devices, or a wirelesslyequipped personal computer, appliance, vehicle, or other device, or maytake any of a variety of other forms.

FIG. 2 is a simplified block diagram of an example mobile station,showing some of the components that can be included in the device. Asshown, the example mobile station includes a cellular wirelesscommunication interface 42, a GPS receiver 44, a user interface 46, aprocessor 48, and data storage 50, all of which may be coupled togetherby a system bus, network, or other connection mechanism 52. The mobilestation may take other forms as well.

Wireless communication interface 42 functions to facilitate airinterface communication with RAN 12 according to one or more protocolssuch as those noted above. An exemplary wireless communication interfaceis an MSM series chipset manufactured by Qualcomm Incorporated, togetherwith one or more internal or external antennas. Wireless communicationinterface 42 may operate together with processor 48 to acquire networkconnectivity, so as to enable the mobile station to engage in wirelesspacket data communications with entities on packet-switched network 26,and to receive WAP push messages such as SMS messages for instance.

GPS receiver 44 functions communicate with GPS satellites 40, so as tofacilitate determination of the location of mobile station 22. Forinstance, the mobile station may obtain ephemeris data from MLS 28 and,in accordance with that data, may tune to various satellites and measurereceived satellite signals. With use of the ephemeris data, the mobilestation may then geometrically compute its own location based on themeasured satellite signals. Alternatively, the mobile station mayprovide the satellite signal measurements to the MLS, and the MLS maycompute the mobile station's location. Although GPS receiver 44 is shownseparate from wireless communication interface 42, the GPS receiverfunction can be integrated together with the wireless communicationinterface function, on a single chipset for instance. By way of example,the chipset could be a Qualcomm chipset having “gpsOne” functionality.

User interface 46 includes components for receiving input from a user ofmobile station and providing output to a user of the mobile station. Forinstance, the user interface may include a keypad, touch-sensitivescreen, microphone, and camera for receiving user input, and a displayscreen and speaker for providing user output. Further, the userinterface 42 may include analog/digital conversion circuitry tofacilitate conversion between analog user input/output and digitalsignals on which the mobile station can operate.

Processor 48 comprises one or more general purpose processors (such asINTEL processors or the like) and/or one or more special purposeprocessors (such as digital signal processors or application specificintegrated circuits). To the extent processor 48 includes more than oneprocessor, the processors could work separately or in combination. Datastorage 50, in turn, comprises one or more volatile or non-volatilestorage components, such as optical, magnetic, or organic storage, anddata storage 50 can be integrated in whole or in part with processor 48.

As shown, the data storage 50 of the example mobile station includesprovisioning data 54 and program logic 56, among other data.

Provisioning data 54 comprises data specifying various parameters andsettings for the mobile station, such as addresses and identifiers ofthe mobile station and addresses and identifiers of trusted servers withwhich the mobile station is arranged to communicate. In terms of mobilestation addresses and identifiers, for instance, the provisioning datamay specify a network access identifier (NAI), an IP address, a mobileidentification number, a mobile directory number, an electronic serialnumber. In terms of trusted server addresses and identifiers, forinstance, the provisioning data may specify IP addresses and identifiersof MLS 28, OTASP server 34, and other servers. Some of this data may behard-coded into the mobile station and thus unalterable, while otherdata may be established and revised through over the air provisioning(from OTASP server 34 for instance) or through manual programming of themobile station.

Program logic 56 comprises machine language instructions or other sortsof logic executable by processor 48 to carry out various mobile stationfunctions described in this document. For instance, the program logicmay be executable to receive via wireless communication interface 42 acommunication that designates a particular source address, to determineby reference to the provisioning data whether the designated sourceaddress is a legitimate address (e.g., for the type of communicationreceived), to thereby determine whether to take particular actionnecessitated by the communication or whether to disregard thecommunication. Further, the program logic may be executable in responseto receiving ephemeris data from MLS 28 to cause GPS receiver 44 to tuneto GPS satellites 40 so as to obtain GPS signal measurements, and toreport the measurements or associated computations to the MLS. Otherexamples are possible as well.

FIG. 3 is a simplified block diagram of an example MLS, showing some ofthe components that can be included in the system. As shown, the exampleMLS includes a network communication interface 60, a processor 62, anddata storage 64, all of which may be coupled together by a system bus,network, or other connection mechanism 66. The MLS may take other formsas well. Further, it should be understood that, although the term“server” is used to characterize the MLS, the MLS “server” can in factbe a composition of numerous network nodes, including for instancenumerous network servers or other entities.

Network communication interface 60 comprises any type of interface forconnecting the MLS with a network through which the MLS can communicatewith mobile station 22 and with other entities. For instance, thenetwork communication interface may comprise a wired or wirelessEthernet interface that provides the MLS with connectivity topacket-switched network 26 as shown, and the network communicationinterface may have an assigned IP address on the packet-switchednetwork. Alternatively or additionally, the network communicationinterface may comprise an interface for connecting with signalingnetwork 38, to facilitate control plane communication between the MLSand mobile station 22.

Processor 62 comprises one or more general purpose processors (such asINTEL processors or the like) and/or one or more special purposeprocessors (such as digital signal processors or application specificintegrated circuits). To the extent processor 62 includes more than oneprocessor, the processors could work separately or in combination. Datastorage 64, in turn, comprises one or more volatile or non-volatilestorage components, such as optical, magnetic, or organic storage, anddata storage 64 can be integrated in whole or in part with processor 62.

As shown, the data storage 62 of the example MLS includes program logic68, such as machine language instructions or other sorts of logicexecutable by processor 62 to carry out various MLS functions describedin this document. For example, the program logic may be executable toreceive a request for the location of mobile station 22 and, to start oras part of the process of trying to determine the location of the mobilestation, to transmit a location-determination message via communicationinterface 60 to the mobile station, where the location-determinationmessage specifies as source address an address of the MLS and specifiesas destination address an address of the mobile station. As anotherexample, the program logic may be executable to detect that the mobilestation has not responded to that location-determination message, and toresponsively cause a trusted server (such as OTASP server 34) to insteadsend to the mobile station a location-determination message specifyingas source address an address of the trusted server.

Further, the MLS program logic may be executable in this process toprovide the mobile station with ephemeris data and/or other data toenable the mobile station to take actions to facilitate locationdetermination, and to receive from the mobile station measurement data(such as base station signal delay measurements and satellite signalmeasurements) to facilitate location determination. And the programlogic may be executable to report determined mobile station location toa requesting entity.

FIG. 4 is next a simplified block diagram of an example OTASP server,showing some of the components that can be included in the server. Asshown, the example OTASP server includes a network communicationinterface 70, a processor 72, and data storage 74, all of which may becoupled together by a system bus, network, or other connection mechanism76. The OTASP server may take other forms as well. Further, it should beunderstood that, although the term “server” is used to characterize theOTASP server, the OTASP “server” can in fact be a composition ofnumerous network nodes, including for instance numerous network serversor other entities.

Network communication interface 70 comprises any type of interface forconnecting the OTASP server with a network through which the OTASPserver can communicate with mobile station 22 and with other entities.For instance, the network communication interface may comprise a wiredor wireless Ethernet interface that provides the OTASP server withconnectivity to packet-switched network 26 as shown, and the networkcommunication interface may have an assigned IP address on thepacket-switched network. Alternatively or additionally, the networkcommunication interface may comprise an interface for connecting withsignaling network 38, to facilitate control plane communication betweenthe OTASP server and mobile station 22.

Processor 72 comprises one or more general purpose processors (such asINTEL processors or the like) and/or one or more special purposeprocessors (such as digital signal processors or application specificintegrated circuits). To the extent processor 72 includes more than oneprocessor, the processors could work separately or in combination. Datastorage 74, in turn, comprises one or more volatile or non-volatilestorage components, such as optical, magnetic, or organic storage, anddata storage 74 can be integrated in whole or in part with processor 72.

As shown, the data storage 74 of the example OTA server includes programlogic 78, such as machine language instructions or other sorts of logicexecutable by processor 72 to carry out various OTA server functionsdescribed in this document. For example, the program logic may beexecutable to transmit new service logic (e.g., firmware updates),provisioning data, and directives to mobile stations such as mobilestation 22. Further, the program logic may be executable to receive acommunication from MLS 28 providing information for transmission tomobile station 22, and to responsively generate and transmit to mobilestation a message providing that information, where the message bears assource address an address of the OTASP server and as destination addressan address of the mobile station. Likewise, the program logic may beexecutable to receive from mobile station 22 a communication providinginformation and to forward the information to the MLS 28.

FIG. 5 is next a flow chart depicting functions that can be carried outin accordance with the present method, in the arrangement of FIG. 1 forinstance. As shown in FIG. 4, at block 80, the method involves MLS 28sends to mobile station 22 (or any other mobile client for that matter)a first location-determination message that designates as an originationaddress of the first location-determination message a network address ofthe mobile location server. At block 82, the MLS then detects that themobile client device has not responded to the sent firstlocation-determination message (e.g., by detecting that the MLS has notreceived from the mobile client device a response to the firstlocation-determination message within a threshold period of time). Atblock 84, responsive to detecting that lack of a response, the MLS thencauses a trusted server to send to the mobile client device a secondlocation-determination message that designates as an origination addressof the second location-determination message a network address of thetrusted server that will facilitate determination of a geographiclocation of the mobile client device.

As discussed above, the trusted server that the MLS causes tocommunicate with the mobile station may be the OTASP server 34, and themobile client device is preferably configured to communicate with theOTASP server (e.g., by having the OTASP server's address stored asprovisioning data indicating a legitimate address from which to receiveOTASP communications, and including logic to respond to suchcommunications).

Further, the act of the MLS sending the first location-determinationmessage may involve sending the first location-determination message asan IP communication, and so the network address of the MLS may be an IPaddress of the MLS. And the act of detecting that the mobile clientdevice has not responded to the sent first location-determinationmessage may involve detecting an absence of a response IP communicationfrom the mobile client device. In turn, the act of the trusted server(e.g., OTASP server) sending the second location-determination messagemay involve the trusted server sending the second location-determinationmessage as an IP communication.

In practice, the second location-determination message may include as arespond-to address an address of the MLS 28 or an address of the trustedserver. If the respond-to address is an address of the MLS, then the MLSmay receive from the mobile client device a response communication,which the MLS would take as a signal indicating that the mobile clientdevice received and responded to the second-location determinationmessage. On the other hand, if the respond-to address is an address ofthe trusted server or if the mobile client device for some other reasonresponds to the trusted server, then the trusted server may responsivelytransmit a message (e.g., the communication received from the mobileclient device) to the MLS, which the MLS would treat as an indicationthat the mobile client device received and responded to thesecond-location determination message.

In this arrangement, the first and/or second location-determinationmessages may carry ephemeris data usable by the mobile client device asa basis to tune to one or more positioning satellites (e.g., GPSsatellites 40) so as to acquire data for use in determining a geographiclocation of the mobile device. Alternatively, the first and secondlocation-determination messages could instead each be a message seekingto initiate a location-determination communication session with themobile client device, and thus functioning as a probe to determinewhether the mobile client device is available and able to engage inlocation-determination communication.

Upon detecting that the mobile client device does not respond to thefirst location-determination message, the MLS may then cause the trustedserver (e.g., OTASP server) to send the second and perhaps subsequentlocation-determination related messages to the mobile client device soas to facilitate mobile client device responses. Alternatively, thesecond or a subsequent location-determination message sent by thetrusted server may provide the mobile client device with updatedprovisioning data that helps ensure that the mobile client device canreceive and respond to communications originated by the MLS. Forinstance, a location-determination message sent by the OTASP server mayre-provision the mobile client device with a proper address of the MLS,so that the mobile client device would thereafter properly respond tocommunications originated from that address. On the other hand, it maybe better to not change the provisioning of the mobile client device andto instead just have the trusted serer (e.g., OTASP server) originatecommunications to the mobile device with the MLS address specified as arespond-to address, to cause the mobile device to respond directly tothe MLS on just a message by message basis.

Of the location-determination messages that are successfully sent to themobile client device (e.g., originated by the trusted server), one suchmessage may be a WAP push message or the like that causes the mobileclient device to respond with a specification of the mobile clientdevice's GPS capability. For instance, the message may cause the mobileclient device to respond with a specification of a micro-browser versionor firmware version of the mobile client device, and the MLS maydetermine based on the specified version whether the mobile clientdevice is GPS capable. Based on that determination, the MLS may thendetermine whether to provide the mobile client device with ephemerisdata and to request GPS signal measurements or associated data from themobile client device. For instance, the MLS may condition sending ofephemeris data to the mobile client device on first determining that themobile client device is GPS-capable.)

Further, another such message that is successfully sent to the mobileclient device (e.g., originated by the trusted server) may be a WAP pushmessage or the like that causes the mobile client device to respond withan identifier of the base station currently serving the mobile station.The MLS may then use that base station identifier as a basis to selectephemeris data correlated with satellites in the sky over the locationof that base station.

After determining that the mobile client device is GPS-capable and afterselecting ephemeris data for use by the mobile client device, the MLSmay then send the ephemeris data to the mobile client device with or asa directive for the mobile client device to obtain and report GPS signalmeasurements. In particular, the MLS may send the ephemeris data to thetrusted server, and the trusted server may originate a message (e.g., athird location-determination message) to the mobile client device fromthe address of the trusted server, providing the mobile client devicewith the ephemeris data and with a directive for the mobile clientdevice to report determined geographic location information to a networkaddress of the MLS. Alternatively, if the mobile client device has beenre-provisioned by this point to receive location-determinationcommunications originated by the MLS (bearing as source address theaddress of the MLS), this ephemeris data can be sent to the mobileclient device in a message originated by the MLS.

Further, this or another subsequent location-determination message maydirect the mobile client device to determine the geographic location ofthe mobile device and to report the determined geographic location tothe network address of the mobile location server. Thus, the mobileclient device may use the provided ephemeris data as a basis to obtainGPS signal measurements, the mobile client device may use themeasurements and ephemeris data to compute a location of the mobiledevice, and the mobile device may report the computed location to adesignated respond-to address for ultimate receipt by the MLS.

In summary, at the start of this process the MLS was unable to engage inlocation-determination communication with the mobile client device,perhaps because the mobile client device was for some reason notprovisioned with the correct address of the MLS. The process thenenables the MLS to engage in location-determination communication withthe mobile client device, leveraging the trusted communicationrelationship that exists between the trusted server (e.g., OTASP server)and the mobile client device. Thus, assuming the mobile client device isGPS capable, the MLS can thereby provide the mobile client device withephemeris data to facilitate granular determination of the location ofthe mobile client device.

An exemplary embodiment of the present method and system has beendescribed above. Those of ordinary skill in the art will appreciate,however, that modifications from the embodiment described can be madewhile remaining within the spirit and scope of the invention as claimed.

What is claimed is:
 1. A method comprising: a mobile location serversending to a mobile client device, as an Internet Protocol (IP)communication, a first location-determination message that designates asan origination address of the first location-determination message anetwork address of the mobile location server; the mobile locationserver then detecting that the mobile client device has not responded tothe sent first location-determination message; and responsive to thedetecting, the mobile location server causing a trusted server to sendto the mobile client device a second location-determination message thatdesignates as an origination address of the secondlocation-determination message a network address of the trusted server,to facilitate determination of a geographic location of the mobileclient device, wherein the trusted server is not the mobile locationserver and comprises an over-the-air-service-provisioning (OTASP) serverwith which the mobile client device is configured to communicate.
 2. Themethod of claim 1, wherein the network address of the mobile locationserver is an IP address of the mobile location server, and whereindetecting that the mobile client device has not responded to the sentfirst location-determination message comprises detecting an absence of aresponse IP communication from the mobile client device.
 3. The methodof claim 2, wherein sending the second location-determination messagecomprises sending the second location-determination message as an IPcommunication, and wherein the network address of the trusted server isan IP address of the trusted server, the method further comprisingreceiving a signal that indicates that the mobile client device receivedand responded to the second location-determination message.
 4. Themethod of claim 3, wherein receiving the signal comprises the mobilelocation server receiving the signal from the trusted server wherein thesignal is sent to the mobile location server by the trusted server uponthe trusted server receiving from the mobile client device a response tothe second location-determination message.
 5. The method of claim 3,further comprising: after receipt of the signal, sending to the mobileclient device ephemeris data usable by the mobile client device as abasis to tune to one or more positioning satellites to obtain data foruse in determining a geographic location of the mobile client device. 6.The method of claim 5, wherein sending the ephemeris data to the mobileclient device comprises causing the trusted server to send the ephemerisdata in a third location-determination message to the mobile clientdevice from the network address of the trusted server.
 7. The method ofclaim 5, wherein the third location-determination message directs themobile client device to determine the geographic location of the mobiledevice and to report the determined geographic location to the networkaddress of the mobile location server.
 8. The method of claim 5, furthercomprising: determining an identity of a cellular base station that isserving the mobile client device; and using the determined identity as abasis to select the ephemeris data to send to the mobile client device,wherein sending the ephemeris data to the mobile client device comprisessending the selected ephemeris data to the mobile client device.
 9. Themethod of claim 8, wherein the determining and using functions areperformed by the mobile location server.
 10. The method of claim 5,further comprising: determining if the mobile client device isGPS-capable; and conditioning sending of the ephemeris data to themobile client device on a determination that the mobile client device isGPS-capable.
 11. The method of claim 10, wherein determining if themobile client device is GPS-capable comprises: sending or causing to besent to the mobile client device a trigger message that causes themobile client device to respond with an indication of a mobile clientdevice characteristic comprising at least one of a firmware version ofthe mobile client device and a microbrowser version of the mobile clientdevice; and receiving in response the indication of the mobile clientdevice characteristic, and using the received indication as a basis todetermine if the mobile client device is GPS-capable.
 12. The method ofclaim 11, wherein the second location-determination message functions asthe trigger message.
 13. The method of claim 3, wherein the secondlocation-determination message carries ephemeris data usable by themobile client device as a basis to tune to one or more positioningsatellites to obtain data for use in determining a geographic locationof the mobile client device.
 14. The method of claim 13, wherein thesecond location-determination message directs the mobile client deviceto determine the geographic location of the mobile client device and toreport the determined geographic location to the network address of themobile location server.
 15. The method of claim 13, further comprising:determining an identity of a cellular base station that is serving themobile client device; using the determined identity as a basis to selectthe ephemeris data to send to the mobile client device; and providingthe selected ephemeris data to the trusted server for inclusion as theephemeris data in the second location-determination message.
 16. Amobile location server comprising: a network communication interface; aprocessor; data storage; and program logic stored in the data storageand executable by the processor to carry out functions comprising:causing the network communication interface to send to a mobile clientdevice as an Internet Protocol (IP) communication, a firstlocation-determination message that designates as an origination addressof the first location-determination message a network address of themobile location server, then detecting that the mobile client device hasnot responded to the sent first location-determination message, andresponsive to the detecting, causing a trusted server to send to themobile client device a second location-determination message thatdesignates as an origination address of the secondlocation-determination message a network address of the trusted server,to facilitate determination of a geographic location of the mobileclient device, wherein the trusted server is not the mobile locationserver and comprises an over-the-air-service-provisioning (OTASP) serverwith which the mobile client device is configured to communicate. 17.The mobile location server of claim 16, wherein the functions furthercomprise: receiving a signal that indicates that the mobile clientdevice received and responded to the second location-determinationmessage; and responsive to the signal, sending to the mobile clientdevice ephemeris data usable by the mobile client device as a basis totune to one or more positioning satellites to obtain data for use indetermining a geographic location of the mobile client device.
 18. Themobile location server of claim 16, wherein the functions furthercomprise: determining if the mobile client device is GPS-capable; andconditioning sending of the ephemeris data to the mobile client deviceon a determination that the mobile client device is GPS-capable.
 19. Amethod comprising: a mobile location server sending to a mobile clientdevice, as an Internet Protocol (IP) communication, a firstlocation-determination message that designates as an origination addressof the first location-determination message an IP address of the mobilelocation server; the mobile location server then detecting that themobile client device has not responded to the sent firstlocation-determination message, wherein detecting that the mobile clientdevice has not responded to the sent first location-determinationmessage comprises detecting an absence of a response IP communicationfrom the mobile client device; responsive to the detecting that themobile client device has not responded to the sent firstlocation-determination message, the mobile location server causing atrusted server to send to the mobile client device as an IPcommunication a second location-determination message that designates asan origination address of the second location-determination message anetwork address of the trusted server, to facilitate determination of ageographic location of the mobile client device, wherein the trustedserver is not the mobile location server and comprises an over the airservice provisioning (OTASP) server; and receiving a signal thatindicates that the mobile client device received and responded to thesecond location-determination message.
 20. The method of claim 19,further comprising: after receipt of the signal, sending to the mobileclient device ephemeris data usable by the mobile client device as abasis to tune to one or more positioning satellites to obtain data foruse in determining a geographic location of the mobile client device.